package com.zxgj.datadirect.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zxgj.datadirect.entity.DataDirectTodo;

import java.util.List;

/**
 * 我的待办服务接口（对应《实施清单》“我的待办管理”功能，处理外来资源申请审核待办）
 */

public interface DataDirectTodoService extends IService<DataDirectTodo> {

    /**
     * 分页查询待办列表
     * @param page 分页参数
     * @param assignee 经办人
     * @param status 状态
     * @return 分页待办数据
     */
    Page<DataDirectTodo> getTodoPage(Page<DataDirectTodo> page, String assignee, String status);

    /**
     * 查看待办详情
     * @param id 待办ID
     * @return 待办详情
     */
    DataDirectTodo getTodoDetail(Long id);

    /**
     * 批量标记待办已读
     * @param applyNos 申请单号列表
     * @param userId 操作人ID
     * @return 标记成功条数
     */
    int markTodoRead(List<String> applyNos, Long userId);

    /**
     * 统计待办数量（用于待办红点）
     * @param assignee 经办人
     * @return 待办数量
     */
    int countTodo(String assignee);
}